A memristor or ‘memory resistor,’ sometimes also referred to as ‘resistive random access memory’ (RRAM or ReRAM), is a non-linear, passive, two-terminal electrical device having or exhibiting an instantaneous resistance level that is a function of bias history. In particular, a bias (e.g., a voltage or a current) applied across terminals of the memristor may be used to set, select or program a resistance level of the memristor. Once programmed, the memristor may retain the resistance level for a specified period of time after the bias is removed (e.g., until reprogrammed). As such, a memristor is a two-terminal device that may function as a non-volatile memory where the programmed resistance level stores information.
In some examples, the memristor may be switched between a specific pair of resistance levels or ‘states’ using a programming signal having two different polarities (e.g., a positive voltage and a negative voltage). For example, the memristor may be switched to a first resistance state (e.g., a relatively low resistance level) by a first polarity of the programming signal. The memristor may be switched to a second resistance state (e.g., a relatively high resistance level) by a second polarity of the programming signal, for example. Such switching may be used to implement a binary memory cell or element, for example. In other examples, the memristor may be switched between a plurality of different resistance levels or states to implement a multi-state or multi-level memory cell, for example. In some examples, a plurality of memristors may be arranged in an array (e.g. a cross-bar array) to serve as a memory for storing data in a computer system or as programmable logic, according to various applications.
Certain examples have other features that are one of in addition to and in lieu of the features illustrated in the above-referenced figures. These and other features are detailed below with reference to the above-referenced figures.